package com.ncd.form.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ncd.common.core.domain.Ztree;
import com.ncd.form.domain.FormDict;
import com.ncd.form.domain.RecordItm;

import java.util.List;
import java.util.Map;

/**
 * 表单字典Service接口
 *
 * @author tree_new_bee
 */
public interface IFormDictService extends IService<FormDict> {


    List<FormDict> queryList(FormDict formDict);

    /**
     * 查询表单字典树
     *
     * @param parent 字典id
     * @return 所有表单字典
     */
    List<Ztree> selectDictTree(Long parent);

    /**
     * 查询表单字典树
     *
     * @param parent 字典id
     * @return 字典子元素
     */
    List<FormDict> selectSubDict(Long parent, Long linkId);

    /**
     * 查询表单字典树
     *
     * @param linkId 数据集id
     * @return 字典子元素
     */
    List<FormDict> selectDictByLink(Long linkId);

    /**
     * 查询子字典
     *
     * @param dictId
     * @return 子表单字典
     */
    FormDict selectDictByParent(Long dictId, Map<String,List<RecordItm>> recordItmMap);
}
